The Jargon Lexicon
= K =
=====
K: /K/ n. [from {kilo-}] A kilobyte. Used both as a
spoken word and a written suffix (like {meg} and {gig} for
megabyte and gigabyte). See {{quantifiers}}.
K&R: [Kernighan and Ritchie] n. Brian Kernighan and Dennis
Ritchie's book "The C Programming Language", esp. the
classic and influential first edition (Prentice-Hall 1978; ISBN
0-113-110163-3). Syn. {White Book}, {Old Testament}. See
also {New Testament}.
k-: pref. Extremely. Not commonly used among hackers, but
quite common among crackers and {warez d00dz} in compounds such
as `k-kool' /K'-kool'/, `k-rad' /K'-rad'/, and `k-awesome'
/K-aw'sm/. Also used to intensify negatives; thus, `k-evil',
`k-lame', `k-screwed', and `k-annoying'. Overuse of this
prefix, or use in more formal or technical contexts, is considered an
indicator of {lamer} status.
kahuna: /k*-hoo'n*/ n. [IBM: from the Hawaiian title for a
shaman] Synonym for {wizard}, {guru}.
kamikaze packet: n. The `official' jargon for what is
more commonly called a {Christmas tree packet}. {RFC}-1025,
"TCP and IP Bake Off" says:
10 points for correctly being able to process a "Kamikaze" packet
(AKA nastygram, christmas tree packet, lamp test segment, et
al.). That is, correctly handle a segment with the maximum
combination of features at once (e.g., a SYN URG PUSH FIN segment
with options and data).
See also {Chernobyl packet}.
kangaroo code: n. Syn. {spaghetti code}.
ken: /ken/ n. 1. [UNIX] Ken Thompson, principal inventor
of UNIX. In the early days he used to hand-cut distribution
tapes, often with a note that read "Love, ken". Old-timers still
use his first name (sometimes uncapitalized, because it's a login
name and mail address) in third-person reference; it is widely
understood (on Usenet, in particular) that without a last name
`Ken' refers only to Ken Thompson. Similarly, Dennis without last
name means Dennis Ritchie (and he is often known as dmr). See
also {demigod}, {{UNIX}}. 2. A flaming user. This was
originated by the Software Support group at Symbolics because the
two greatest flamers in the user community were both named Ken.
kgbvax: /K-G-B'vaks/ n. See {kremvax}.
KIBO: /ki:'boh/ 1. [acronym] Knowledge In, Bullshit Out.
A summary of what happens whenever valid data is passed through an
organization (or person) that deliberately or accidentally
disregards or ignores its significance. Consider, for example,
what an advertising campaign can do with a product's actual
specifications. Compare {GIGO}; see also {SNAFU principle}.
2. James Parry , a Usenetter infamous for
various surrealist net.pranks and an uncanny, machine-assisted
knack for joining any thread in which his nom de guerre is
mentioned.
kiboze: v. [Usenet] To {grep} the Usenet news for a string,
especially with the intention of posting a follow-up. This
activity was popularised by Kibo (see {KIBO}, sense 2).
kick: v. [IRC] To cause somebody to be removed from a
{IRC} channel, an option only available to {CHOP}s. This is
an extreme measure, often used to combat extreme {flamage} or
{flood}ing, but sometimes used at the chop's whim. Compare
{gun}.
kill file: n. [Usenet] (alt. `KILL file') Per-user
file(s) used by some {Usenet} reading programs (originally Larry
Wall's `rn(1)') to discard summarily (without presenting for
reading) articles matching some particularly uninteresting (or
unwanted) patterns of subject, author, or other header lines. Thus
to add a person (or subject) to one's kill file is to arrange for
that person to be ignored by one's newsreader in future. By
extension, it may be used for a decision to ignore the person or
subject in other media. See also {plonk}.
killer micro: n. [popularized by Eugene Brooks] A
microprocessor-based machine that infringes on mini, mainframe, or
supercomputer performance turf. Often heard in "No one will
survive the attack of the killer micros!", the battle cry of the
downsizers. Used esp. of RISC architectures.
The popularity of the phrase `attack of the killer micros' is
doubtless reinforced by the movie title "Attack Of The Killer
Tomatoes" (one of the {canonical} examples of
so-bad-it's-wonderful among hackers). This has even more flavor
now that killer micros have gone on the offensive not just
individually (in workstations) but in hordes (within massively
parallel computers).
killer poke: n. A recipe for inducing hardware damage on a
machine via insertion of invalid values (see {poke}) into a
memory-mapped control register; used esp. of various fairly
well-known tricks on {bitty box}es without hardware memory
management (such as the IBM PC and Commodore PET) that can overload
and trash analog electronics in the monitor. See also {HCF}.
kilo-: pref. [SI] See {{quantifiers}}.
KIPS: /kips/ n. [abbreviation, by analogy with {MIPS}
using {K}] Thousands (*not* 1024s) of Instructions Per
Second. usage: rare.
KISS Principle: /kis' prin'si-pl/ n. "Keep It Simple,
Stupid". A maxim often invoked when discussing design to fend off
{creeping featurism} and control development complexity.
Possibly related to the {marketroid} maxim on sales
presentations, "Keep It Short and Simple".
kit: n. [Usenet; poss. fr. DEC slang for a full software
distribution, as opposed to a patch or upgrade] A source
software distribution that has been packaged in such a way that it
can (theoretically) be unpacked and installed according to a series
of steps using only standard UNIX tools, and entirely documented by
some reasonable chain of references from the top-level {README
file}. The more general term {distribution} may imply that
special tools or more stringent conditions on the host environment
are required.
klone: /klohn/ n. See {clone}, sense 4.
kludge: 1. /klooj/ n. Incorrect (though regrettably
common) spelling of {kluge} (US). These two words have been
confused in American usage since the early 1960s, and widely
confounded in Great Britain since the end of World War II.
2. [TMRC] A {crock} that works. (A long-ago "Datamation"
article by Jackson Granholme similarly said: "An ill-assorted
collection of poorly matching parts, forming a distressing
whole.") 3. v. To use a kludge to get around a problem. "I've
kludged around it for now, but I'll fix it up properly later."
This word appears to have derived from Scots `kludge' or
`kludgie' for a common toilet, via British military slang. It
apparently became confused with U.S. {kluge} during or after
World War II; some Britons from that era use both words in
definably different ways, but {kluge} is now uncommon in Great
Britain. `Kludge' in Commonwealth hackish differs in meaning from
`kluge' in that it lacks the positive senses; a kludge is something
no Commonwealth hacker wants to be associated too closely with.
Also, `kludge' is more widely known in British mainstream slang
than `kluge' is in the U.S.
kluge: /klooj/ [from the German `klug', clever] 1. n. A
Rube Goldberg (or Heath Robinson) device, whether in hardware or
software. 2. n. A clever programming trick intended to solve a
particular nasty case in an expedient, if not clear, manner. Often
used to repair bugs. Often involves {ad-hockery} and verges on
being a {crock}. 3. n. Something that works for the wrong
reason. 4. vt. To insert a kluge into a program. "I've kluged
this routine to get around that weird bug, but there's probably a
better way." 5. [WPI] n. A feature that is implemented in a
{rude} manner.
Nowadays this term is often encountered in the variant spelling
`kludge'. Reports from {old fart}s are consistent that
`kluge' was the original spelling, reported around computers as
far back as the mid-1950s and, at that time, used exclusively of
*hardware* kluges. In 1947, the "New York Folklore
Quarterly" reported a classic shaggy-dog story `Murgatroyd the
Kluge Maker' then current in the Armed Forces, in which a `kluge'
was a complex and puzzling artifact with a trivial function. Other
sources report that `kluge' was common Navy slang in the WWII era
for any piece of electronics that worked well on shore but
consistently failed at sea.
However, there is reason to believe this slang use may be a decade
older. Several respondents have connected it to the brand name of
a device called a "Kluge paper feeder", an adjunct to mechanical
printing presses. Legend has it that the Kluge feeder was designed
before small, cheap electric motors and control electronics; it
relied on a fiendishly complex assortment of cams, belts, and
linkages to both power and synchronize all its operations from one
motive driveshaft. It was accordingly tempermental, subject to
frequent breakdowns, and devilishly difficult to repair -- but oh,
so clever! People who tell this story also aver that `Kluge' was
the the name of a design engineer.
There is in fact a Brandtjen & Kluge Inc., an old family business
that manufactures printing equipment -- interestingly, their name
is pronounced /kloo'gee/! Henry Brandtjen, president of the
firm, told me (ESR, 1994) that his company was co-founded by his
father and an engineer named Kluge /kloo'gee/, who built and
co-designed the original Kluge automatic feeder in 1919.
Mr. Brandtjen claims, however, that this was a *simple* device
(with only four cams); he says he has no idea how the myth of its
complexity took hold.
{TMRC} and the MIT hacker culture of the early '60s seems to
have developed in a milieu that remembered and still used some WWII
military slang (see also {foobar}). It seems likely that
`kluge' came to MIT via alumni of the many military electronics
projects that had been located in Cambridge (many in MIT's
venerable Building 20, in which {TMRC} is also located) during
the war.
The variant `kludge' was apparently popularized by the
{Datamation} article mentioned above; it was titled "How
to Design a Kludge" (February 1962, pp. 30, 31). This spelling was
probably imported from Great Britain, where {kludge} has an
independent history (though this fact was largely unknown to
hackers on either side of the Atlantic before a mid-1993 debate in
the Usenet group alt.folklore.computers over the First and
Second Edition versions of this entry; everybody used to think
{kludge} was just a mutation of {kluge}). It now appears that
the British, having forgotten the etymology of their own `kludge'
when `kluge' crossed the Atlantic, repaid the U.S. by lobbing the
`kludge' orthography in the other direction and confusing their
American cousins' spelling!
The result of this history is a tangle. Many younger U.S. hackers
pronounce the word as /klooj/ but spell it, incorrectly for its
meaning and pronunciation, as `kludge'. British hackers mostly
learned /kluhj/ orally and use it in a restricted negative sense
and are at least consistent. European hackers have mostly learned
the word from written American sources and tend to pronounce it
/kluhj/ but use the wider American meaning!
Some observers consider this mess appropriate in view of the word's
meaning.
kluge around: vt. To avoid a bug or difficult condition by
inserting a {kluge}. Compare {workaround}.
kluge up: vt. To lash together a quick hack to perform a
task; this is milder than {cruft together} and has some of the
connotations of {hack up} (note, however, that the construction
`kluge on' corresponding to {hack on} is never used). "I've
kluged up this routine to dump the buffer contents to a safe
place."
Knights of the Lambda Calculus: n. A semi-mythical
organization of wizardly LISP and Scheme hackers. The name refers
to a mathematical formalism invented by Alonzo Church, with which
LISP is intimately connected. There is no enrollment list and the
criteria for induction are unclear, but one well-known LISPer has
been known to give out buttons and, in general, the *members*
know who they are....
Knuth: /knooth/ n. [Donald E. Knuth's "The Art of
Computer Programming"] Mythically, the reference that answers all
questions about data structures or algorithms. A safe answer when
you do not know: "I think you can find that in Knuth." Contrast
{literature, the}. See also {bible}.
kremvax: /krem-vaks/ n. [from the then large number of
{Usenet} {VAXen} with names of the form foovax]
Originally, a fictitious Usenet site at the Kremlin, announced on
April 1, 1984 in a posting ostensibly originated there by Soviet
leader Konstantin Chernenko. The posting was actually forged by
Piet Beertema as an April Fool's joke. Other fictitious sites
mentioned in the hoax were moskvax and {kgbvax}. This was
probably the funniest of the many April Fool's forgeries
perpetrated on Usenet (which has negligible security against them),
because the notion that Usenet might ever penetrate the Iron
Curtain seemed so totally absurd at the time.
In fact, it was only six years later that the first genuine site in
Moscow, demos.su, joined Usenet. Some readers needed
convincing that the postings from it weren't just another prank.
Vadim Antonov, senior programmer at Demos and the major poster from
there up to mid-1991, was quite aware of all this, referred to it
frequently in his own postings, and at one point twitted some
credulous readers by blandly asserting that he *was* a
hoax!
Eventually he even arranged to have the domain's gateway site
*named* kremvax, thus neatly turning fiction into fact
and demonstrating that the hackish sense of humor transcends
cultural barriers. [Mr. Antonov also contributed the
Russian-language material for this lexicon. -- ESR]
In an even more ironic historical footnote, kremvax became an
electronic center of the anti-communist resistance during the
bungled hard-line coup of August 1991. During those three days the
Soviet UUCP network centered on kremvax became the only
trustworthy news source for many places within the USSR. Though
the sysops were concentrating on internal communications,
cross-border postings included immediate transliterations of Boris
Yeltsin's decrees condemning the coup and eyewitness reports of the
demonstrations in Moscow's streets. In those hours, years of
speculation that totalitarianism would prove unable to maintain its
grip on politically-loaded information in the age of computer
networking were proved devastatingly accurate -- and the original
kremvax joke became a reality as Yeltsin and the new Russian
revolutionaries of `glasnost' and `perestroika' made
kremvax one of the timeliest means of their outreach to the
West.
kyrka: /shir'k*/ n. [Swedish] See {feature key}.